package com.wzapp.sitposture.authentication.service;
/**
 * Created by wangzhijun on 2018/1/23.
 */
public interface MobileAndCodeService {
    /**
     * 功能: 查询超时时间 <br/>
     *
     * @author ql
     * @date 2018-02-06 14:59
     * @param mobile 手机号码
     * @return java.lang.Long 超时时间的毫秒数
     */
    Long getExpireTime(String mobile);

    /**
     * 功能: 获取验证码发送次数<br/>
     *
     * @author ql
     * @create 2018/5/7 19:58
     * @param mobile 手机号码
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return java.lang.Integer
     **/
    Integer count(String mobile, Long startTime,Long endTime);

    /**
     * 功能: 判断是否存在相应key的数据<br/>
     *
     * @author ql
     * @create 2018/5/7 19:59
     * @param key
     * @return boolean
     **/
    boolean exists(String key);

    /**
     * 功能: 删除对应key数据<br/>
     *
     * @author ql
     * @create 2018/5/7 20:01
     * @param key
     * @return boolean
     **/
    boolean remove(String key);

    /**
     * 功能: 存储key,value,expireTime数据<br/>
     *
     * @author ql
     * @create 2018/5/7 20:01
     * @param key
     * @param value
     * @param expireTime 过期时间
     * @return boolean
     **/
    boolean storage(String key, Object value, Long expireTime);

    /**
     * 功能: 根据主键查询相应编码<br/>
     *
     * @author ql
     * @create 2018/5/7 20:02
     * @param key
     * @return java.lang.String
     **/
    String queryMobileCodeByKey(String key);


}
